package cn.picclife.mwx.manager.sys.controller;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import com.alibaba.fastjson.JSONObject;

import cn.picclife.mwx.manager.sys.model.bo.DataResponse;
import cn.picclife.mwx.manager.sys.model.bo.MatchListReq;
import cn.picclife.mwx.manager.sys.model.bo.MatchQueryListReq;
import cn.picclife.mwx.manager.sys.model.bo.MatchSaveReq;
import cn.picclife.mwx.manager.sys.model.bo.MatchSwitchReq;
import cn.picclife.mwx.manager.sys.model.bo.TargetTipReq;
import cn.picclife.mwx.manager.sys.service.TipsMatchService;

/**
 * @description 系统与提示信息匹配controller 
 * @author SaiZhiyi
 * @creatTime 2020年7月17日 上午10:17:53
 */
@RequestMapping("tipMatch")
@RestController
public class TipsMatchController {
	
	@Autowired
	private TipsMatchService tipsMatchService;
	private Log log = LogFactory.getLog(TipsMatchController.class);

	/**
	 * @description 已匹配系统与提醒消息列表查询
	 * @author saizhiyi 
	 * @param req
	 * @return
	 */
	@RequestMapping(value="/queryList", method= {RequestMethod.POST})
	public DataResponse queryList(@RequestBody MatchQueryListReq req) {
		log.info("===========queryList查询已匹配提醒数据请求报文："+JSONObject.toJSON(req).toString());
		//调用service
		DataResponse res = tipsMatchService.queryList(req);
		log.info("===========queryList查询已匹配提醒数据返回报文："+JSONObject.toJSON(res).toString());
		return res;
	}
	
	/**
	 * @description 新增匹配系统提醒 
	 * @author saizhiyi 
	 * @param req
	 * @return
	 */
	@RequestMapping(value="/matchSave", method= {RequestMethod.POST})
	public DataResponse matchSave(@RequestBody MatchSaveReq req) {
		log.info("===========matchSave新增匹配提醒接口请求报文："+JSONObject.toJSON(req).toString());
		//调用service
		DataResponse res = tipsMatchService.matchSave(req);
		log.info("===========matchSave新增匹配提醒接口返回报文："+JSONObject.toJSON(res).toString());
		return res;
	}
	
	/**
	 * @description 是否有效开关 
	 * @author saizhiyi 
	 * @param req
	 * @return
	 */
	@RequestMapping(value="/matchSwitch", method= {RequestMethod.POST})
	public DataResponse matchSwitch(@RequestBody MatchSwitchReq req) {
		log.info("===========matchSwitch开关接口请求报文："+JSONObject.toJSON(req).toString());
		//调用service
		DataResponse res = tipsMatchService.matchSwitch(req);
		log.info("===========matchSwitch开关接口返回报文："+JSONObject.toJSON(res).toString());
		return res;
	}
	
	/**
	 * @description 查询可用匹配提醒消息 
	 * @author saizhiyi 
	 * @param req
	 * @return
	 */
	@RequestMapping(value="/queryMatchList", method= {RequestMethod.POST})
	public DataResponse queryMatchList(@RequestBody MatchListReq req) {
		log.info("===========queryMatchList可用提醒消息列表接口请求报文："+JSONObject.toJSON(req).toString());
		//调用service
		DataResponse res = tipsMatchService.queryMatchList(req);
		log.info("===========queryMatchList可用提醒消息列表接口返回报文："+JSONObject.toJSON(res).toString());
		return res;
	}
	
	
	@RequestMapping(value="/querytargetTip", method= {RequestMethod.POST})
	public DataResponse querytargetTip(@RequestBody TargetTipReq req) {
		log.info("===========queryMatchList可用提醒消息列表接口请求报文："+JSONObject.toJSON(req).toString());
		//调用service
		DataResponse res = tipsMatchService.querytargetTip(req);
		log.info("===========queryMatchList可用提醒消息列表接口返回报文："+JSONObject.toJSON(res).toString());
		return res;
	}
	
	@RequestMapping(value="/querySysteam", method= {RequestMethod.POST})
	public DataResponse querySysteam() {
		log.info("===========querySysteam查询系统接口请求报文：");
		//调用service
		DataResponse res = tipsMatchService.querySysteam();
		log.info("===========querySysteam查询系统接口返回报文："+JSONObject.toJSON(res).toString());
		return res;
	}
}
